// Package day_02_mid_sort helan_flag2
// @Title day_02_mid_sort
// @Description
// @Author  == 琳琳也叫王木木 ==  2021/9/4 13:00
// @Create  2021/9/4 13:00
package day_02_mid_sort

import "fmt"

// 这个就需要两个指针了 左边界和右边界
func HelandII(nums []int, tag int) []int {
	if nums == nil || len(nums) < 1 {
		return nil
	}
	l, r := 0, len(nums)-1
	for i := 0; i <= r; i++ {
		fmt.Println(nums, l, r, i)
		if nums[i] < tag {
			nums[i], nums[l] = nums[l], nums[i]
			l++
		} else if nums[i] > tag {
			nums[i], nums[r] = nums[r], nums[i]
			r--
			if nums[i] > tag || nums[i] < tag {
				i--
			}
		}
	}
	return nums
}
